package de.westranger.forex.trading.analysis.util;

public class EvaluationResult {

	private int windowLength;
	private int gapLen;
	private double channel;
	private double stopLoss;
	private double takeProfit;
	private int posTrade;
	private int negTrade;
	private double profit;

	public EvaluationResult(final int windowLength, final int gapLen, final double channel,final double stopLoss, final double takeProfit,final int posTrade,final int negTrade, final double profit){
		this.windowLength = windowLength;
		this.gapLen = gapLen;
		this.channel = channel;
		this.stopLoss = stopLoss;
		this.takeProfit = takeProfit;
		this.posTrade = posTrade;
		this.negTrade = negTrade;
		this.profit = profit;
	}
	
	public EvaluationResult(final int windowLength, final int gapLen, final double channel,final double stopLoss, final double takeProfit){
		this.windowLength = windowLength;
		this.gapLen = gapLen;
		this.channel = channel;
		this.stopLoss = stopLoss;
		this.takeProfit = takeProfit;
	}
	
	public final int getWindowLength() {
		return windowLength;
	}

	public final void setWindowLength(int windowLength) {
		this.windowLength = windowLength;
	}

	public final int getGapLen() {
		return gapLen;
	}

	public final void setGapLen(int gapLen) {
		this.gapLen = gapLen;
	}

	public final double getChannel() {
		return channel;
	}

	public final void setChannel(double channel) {
		this.channel = channel;
	}

	public final double getStopLoss() {
		return stopLoss;
	}

	public final void setStopLoss(double stopLoss) {
		this.stopLoss = stopLoss;
	}

	public final double getTakeProfit() {
		return takeProfit;
	}

	public final void setTakeProfit(double takeProfit) {
		this.takeProfit = takeProfit;
	}

	public final int getPosTrade() {
		return posTrade;
	}

	public final void setPosTrade(int posTrade) {
		this.posTrade = posTrade;
	}

	public final int getNegTrade() {
		return negTrade;
	}

	public final void setNegTrade(int negTrade) {
		this.negTrade = negTrade;
	}

	public final double getProfit() {
		return profit;
	}

	public final void setProfit(double profit) {
		this.profit = profit;
	}
	
	@Override
	public String toString(){
		final StringBuilder sb = new StringBuilder();
		sb.append(this.windowLength);
		sb.append('\t');
		sb.append(this.gapLen);
		sb.append('\t');
		sb.append(this.channel);
		sb.append('\t');
		sb.append(this.stopLoss);
		sb.append('\t');
		sb.append(this.takeProfit);
		sb.append('\t');
		sb.append(this.posTrade);
		sb.append('\t');
		sb.append(this.negTrade);
		sb.append('\t');
		sb.append(this.profit);
		sb.append('\n');
		return sb.toString();
	}
}
